#include "Function/Transmit.h"
#include "Device/Uart.h"
#include <string.h>

void TransmitInit()
{

}

void TransmitSendData(DataInfo *di)
{
	VAR const byte *dat=(const byte*)di;
	SerialSendBytes(dat,sizeof(DataInfo));
}

void TransmitSend(float temp,float distance,uint8 photoCell)
{
	VAR DataInfo di;
	VAR byte tmp[4];
	
	di.Size=sizeof(DataInfo);	//得到结构体自己的大小
	di.StartFlag=0x159; 		//设置开始标志
	di.Temp=temp;				//温度
	di.Distance=distance;		//距离
	di.PhotoCell=photoCell;		//光敏阻值
	
	//得到温度4个字节的和
	memcpy(tmp,&temp,sizeof(float)); 
	di.CheckSum=tmp[0]+tmp[1]+tmp[2]+tmp[3];
	
	//加上距离4个字节的和
	memcpy(tmp,&distance,sizeof(float));
	di.CheckSum+=tmp[0]+tmp[1]+tmp[2]+tmp[3];
	
	//加上光敏阻值1个字节的和
	di.CheckSum+=photoCell;
	
	//结束标志
	di.EndFlag=0x9510;
	
	//传输
	TransmitSendData(&di);
}